Transmitting media data (e.g., audio, video, graphic, image, and the like) over a network has become commonplace in today's highly connected and wired economy. Consumers and organizations consume large quantities of network bandwidth and other computing resources when receiving and playing media data. Consequently, a variety of techniques have been attempted to manage and alleviate bandwidth and resource consumption when acquiring and playing media data.
For example, when media data initially became available over network connections, the solution was primarily to upgrade network connections to T1, fiber optics, cable, Digital Subscriber Line (DSL), cable, broadband, and others. The solution was geared towards hardware connections having more bandwidth capabilities for handling the load associated with transmitting media data over a network. However, data transmission rates can only being improved if both the sender and recipient have a high bandwidth network connection. Thus, transmission rates are tied to the least common denominator connection in a sender-recipient relationship.
Accordingly, solutions evolved to more of a software focus in addition to higher bandwidth network connections. One such solution is referred to as media streaming. With this technique, a sender breaks the media data up into packets and serially transmits the individual packets over the network to a recipient. The recipient uses additional streaming software to buffer a predefined amount of media data before the media data is played. Once the media data begins playing, the recipient usually experiences a continuous play of the media data, since as the recipient consumes some of the media data; the buffered amount of data is being replaced with new media data that has yet to be consumed.
Higher bandwidth network connections and streaming techniques remain the preferred method of delivering and consuming media data over a network. However, before a recipient can actually consume the media data, the recipient needs to download and install a media player on the recipient's computing device. These media players are readily available over the Internet through a World Wide Web (WWW) browser. A few examples include Microsoft's Windows Media Player, Apple's QuickTime Media Player, Real Network's Real Players, and others.
Each of the commercially available media players generally requires registration and in some instances may require a restart of a computing device that downloads a media player. Some actually continually solicit a recipient to upgrade to a paid version of the media player with presumably more features and online support. The electronic solicitations can become annoying to the recipient, as well as pop-up advertisements that are displayed each time a recipient uses the media player. Moreover, in a business environment, it is generally not desirable for each individual employee to download free software (freeware) on his/her computer. This is so, because the freeware is not supported and can cause unexpected failures or other issues related to desktop management, such as maintenance, support, and upgrades.
Thus, downloading, installing, and using a media player can be time consuming, prohibited (in some environments), and annoying. Additionally, a large portion of Internet users still have standard dial-up connections to the internet and do not have high bandwidth equipment and/or service providers. Therefore, their network connections still make media streaming a challenging and frustrating task, since there is large startup latencies before the media data is buffered and played on their computing devices. As a result, many Internet users elect not to consume media data at all.
Attempts have been made to alleviate this situation by compressing the media data when streamed from the sender and decompressing the media data when consumed by the user. But, even the best conventionally available media compression/decompression techniques have not appreciably remedied the problem for low bandwidth Internet users.
Therefore, there is a need for improved implementations and techniques for distributing media players, compressing media data, and playing media data. These implementations and techniques should permit low bandwidth Internet users to consume media data in a more time efficient manner without the need to install a proprietary media player.